home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / smaltalk / manchest.lha / MANCHESTER / manchester / 4.1 / toFront.st < prev    next >
Text File  |  1993-07-24  |  2KB  |  51 lines

  1. "    NAME        toFront
  2.     AUTHOR        Bernard Horan <bernard@is.morgan.com>
  3.     CONTRIBUTOR    Bernard Horan <bernard@is.morgan.com>
  4.     FUNCTION      keep dialog windows at front of Smalltalk stack
  5.     ST-VERSIONS    4.1
  6.     PREREQUISITES     
  7.     CONFLICTS     
  8.     DISTRIBUTION    world
  9.     VERSION        1.0
  10.     DATE        May 1993
  11.     SUMMARY        Finally, a fix for that annoying feature whereby under X you lose sight of your dialog box, and subsequently your image appears to freeze. (Especially annoying for end-users.) In fact, you can see the fix is
  12. trivial; it relies on the fact the the dialogbox remains the activeController
  13. throughout its interaction with the user. Bernard Horan, 6/5/93"!
  14.  
  15. !StandardSystemController methodsFor: 'dialogs'!
  16.  
  17. bringWindowToFront
  18.     "do nothing"!
  19.  
  20. unknownEvent: anEvent 
  21.     "Some unknown window manager event has happened, let's assume it 
  22.     means 
  23.     that we need to bring my window back to the front. 
  24.     Bernard Horan, 6 May 1993"
  25.  
  26.     self == ScheduledControllers activeController ifFalse:[ScheduledControllers bringActiveWindowToFront].! !
  27.  
  28. !DialogController methodsFor: 'dialogs'!
  29.  
  30. bringWindowToFront
  31.     self view isNil ifFalse:[self view raise]! !
  32.  
  33. !ControlManager methodsFor: 'dialogs'!
  34.  
  35. bringActiveWindowToFront
  36.     activeController isNil ifFalse:[activeController bringWindowToFront]! !
  37.  
  38. !ScheduledWindow methodsFor: 'events'!
  39.  
  40. processEvent: anEvent 
  41.     "Dispatch the event to the appropriate method."
  42.     "Bernard Horan, 6 May 1993"
  43.  
  44.     anEvent key == #resize ifTrue: [self extentEvent: anEvent value].
  45.     anEvent key == #close ifTrue: [self controller close].
  46.     anEvent key == #eventUnknown ifTrue: ["Send the event as argument, just in case I ever get to understand its 
  47.         significance"
  48.         self controller unknownEvent: anEvent]! !
  49.  
  50.  
  51.